ACTOR " Protozoid " 31088
{
    //$Category DN3D Aliens //Protozoid Slimers
	Health 10
    Radius 12
    Height 3
    Mass 0x7FFFFFFF
    Obituary "%o succumbed to the deadly infection of Protozoid Slimer."
    Speed 8
    SeeSound "Slimer/Sight"
    DeathSound "Slimer/Death"
    ActiveSound "Slimer/Active"
    BloodColor "AA D1 5C" 
    XScale 0.6
    YScale 0.5
    Species "Alien"
	DamageFactor "Trip_Punch", 0.0
	DamageFactor "Radial", 0.0
	DamageFactor "AlienPoison", 0.0
	DamageFactor "Damage_Step", 0.0
	Painchance "LaserShot", 256
	Monster
	-NOGRAVITY
	+LOOKALLAROUND
	+FLOORHUGGER
	+FLOORCLIP
	+DROPOFF
	+SHOOTABLE
    +SOLID
	+NOTARGET
	+NOICEDEATH
    States
    {
    Spawn:
        ENE9 A 0 
	    ENE9 A 0 A_JumpIfInventory("SlimerEvolution",6,"Evolution")
		ENE9 A 0 A_JumpIfInventory("SpawnLookCeiling",1,11)
		ENE9 A 0 A_TakeInventory("SpawnLookCeiling",999)
		ENE9 ABCDEDCB 2 A_Look
        Loop
	Spawn2:
		ENE9 FGHIJIHG 2 A_Look
        Loop
    GoDown:
        ENE9 M 0 A_Stop
		ENE9 M 0 A_PlaySound("Slimer/Active")
        ENE9 M 0 A_ChangeFlag("NOGRAVITY",0)
		ENE9 M 0 A_ChangeFlag("FLOORCLIP",1)
		ENE9 M 0 A_ChangeFlag("FLOORHUGGER",1)
		ENE9 M 0 A_ChangeFlag("DROPOFF",1)
		ENE9 M 0 A_TakeInventory("SpawnLookCeiling",999)
	    ENE9 KLL 2 A_JumpIf(Z-FloorZ<=30,"SeeDown")
	    ENE9 L 2 A_JumpIf(VelZ==0,"SeeDown")
	    Goto GoDown+7
    GoUp:   
        ENE9 M 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoDown")
		ENE9 M 0 A_PlaySound("Slimer/Active")
        ENE9 M 0 A_ChangeFlag("NOGRAVITY",1)
		ENE9 M 0 A_ChangeFlag("FLOORCLIP",0)
		ENE9 M 0 A_ChangeFlag("FLOORHUGGER",0)
		ENE9 M 0 A_ChangeFlag("DROPOFF",0)
		ENE9 M 0 A_GiveInventory("SpawnLookCeiling",1)
        ENE9 M 2 ThrustThingZ(0,50,0,0)
	    ENE9 MN 2 A_JumpIf(CeilingZ-Z<=30,"SeeUp")
        ENE9 N 2 ThrustThingZ(0,50,0,0)
	    ENE9 N 2 A_JumpIf(VelZ==0,"SeeUp")
	    Goto GoUp+9
    See:
    SeeDown:
	    ENE9 A 0 
	    ENE9 A 0 A_JumpIfInventory("SlimerEvolution",6,"Evolution")
        ENE9 A 0 A_ChangeFlag("NOGRAVITY",0)
		ENE9 A 0 A_SetScale(0.6,0.5)
  	    ENE9 A 0 A_JumpIfTargetInLOS(2,140)
	    ENE9 A 0 A_Jump(24,"GiveUp")
        ENE9 ABCDEDCB 2 A_VileChase		
	    ENE9 A 0 A_Jump(52,"GoUp")
	    ENE9 A 0 A_Jump(52,"GoDown")
	    Loop
    SeeUp:
  	    ENE9 A 0 A_JumpIfTargetInLOS(2,140)
	    ENE9 A 0 A_Jump(20,"Giveup")
        ENE9 A 0 ThrustThingZ(0,50,0,0)
		ENE9 A 0 A_SetScale(0.6,0.5)
        ENE9 F 2 A_Chase
        ENE9 F 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 G 0 ThrustThingZ(0,50,0,0)
	    ENE9 G 2 A_Chase
        ENE9 G 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 G 0 ThrustThingZ(0,50,0,0)
	    ENE9 H 2 A_Chase
        ENE9 H 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 H 0 ThrustThingZ(0,50,0,0)
	    ENE9 I 2 A_Chase 
        ENE9 I 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 I 0 ThrustThingZ(0,50,0,0)
	    ENE9 J 2 A_Chase
        ENE9 J 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 J 0 ThrustThingZ(0,50,0,0)
	    ENE9 I 2 A_Chase
        ENE9 I 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 I 0 ThrustThingZ(0,50,0,0)
	    ENE9 H 2 A_Chase
        ENE9 H 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 H 0 ThrustThingZ(0,50,0,0)
	    ENE9 G 2 A_Chase
        ENE9 G 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 G 0 ThrustThingZ(0,50,0,0)
	    ENE9 G 0 A_Jump(52,"GoDown")
	    Loop	
    GiveUp:
        ENE9 K 0 A_ChangeFlag("NOGRAVITY",0)
	    Goto See
	Melee:
	    ENE9 A 0 
		ENE9 A 0 A_JumpIfInventory("SpawnLookCeiling",1,"MeleeCeiling")
        ENE9 A 0 A_JumpIfInTargetInventory("GettingSlimed",1,"Melee2")
        ENE9 A 0 A_GiveToTarget("GettingSlimedItem",1)
		ENE9 A 0 A_GiveInventory("SlimedACSDeath",1)
        Goto Death
	MeleeCeiling:
	    ENE9 A 0 
        ENE9 A 0 A_JumpIfInTargetInventory("GettingSlimed",1,"Melee2")
        ENE9 A 0 A_GiveToTarget("GettingSlimedItem2",1)
		ENE9 A 0 A_GiveInventory("SlimedACSDeath",1)
        Goto Death
	Melee2:       
        ENE9 P 0 A_ChangeFlag("NOGRAVITY",1)
	    ENE9 P 1 ThrustThingZ(0,4,0,1)	
  	    ENE9 P 0 A_PlaySound("Slimer/Attack")  
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 P 0 A_CustomMeleeAttack(12)
	    ENE9 P 1 ThrustThing(Angle*256/360,1,0,0)
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
	    ENE9 P 1 ThrustThing(Angle*256/360,1,0,0)
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 ThrustThing(Angle*256/360,1,0,0)
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 ThrustThing(Angle*256/360,1,0,0)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 R 0 A_FaceTarget
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 R 1 ThrustThingZ(0,8,1,1)	
        ENE9 R 0 A_FaceTarget
	    ENE9 R 0 A_JumpIfTargetInsideMeleeRange(1)
        ENE9 R 0 A_FaceTarget
	    ENE9 R 0 A_Jump(255,"GoDown")
	    ENE9 R 1 ThrustThing(Angle*256/360,1,0,0)
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 R 0 A_ChangeFlag("NOGRAVITY",0)
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 R 1 ThrustThing(Angle*256/360,1,0,0)
	    ENE9 R 0 A_CustomMeleeAttack(10)
        Goto Melee2+2
	Pain.LaserShot:
	    ENE9 A 0
		ENE9 A 0 A_SpawnItemEx("PainTripLaser",0,0,5)
		ENE9 A 0 HealThing(2)
		Goto See
	Heal: 
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 0 A_GiveInventory("SlimerEvolution",1)
		Goto See
	Evolution:
	    ENE9 O 1 A_SetInvulnerable
	    ENE9 O 1 A_GiveInventory("SlimedEvolutionDeath",1)
		ENE9 O 1 A_PlaySound("Creep/Prepare",5)
		ENE9 O 1 A_PlaySound("Creep/GasSpray")
		CRE1 B 3 A_SetScale(1.0,0.10)
		CRE1 B 3 A_SetScale(1.0,0.15)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.20)
		CRE1 B 3 A_SetScale(1.0,0.25)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.30)
		CRE1 B 3 A_SetScale(1.0,0.35)
		CRE1 B 1 A_PlaySound("Creep/GasSpray")
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.40)
		CRE1 B 3 A_SetScale(1.0,0.45)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.50)
		CRE1 B 3 A_SetScale(1.0,0.55)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.60)
		CRE1 B 3 A_SetScale(1.0,0.65)
		CRE1 B 1 A_PlaySound("Creep/GasSpray")
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.70)
		CRE1 B 3 A_SetScale(1.0,0.75)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.80)
		CRE1 B 3 A_SetScale(1.0,0.85)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.90)
		CRE1 B 3 A_SetScale(1.0,0.95)
		CRE1 B 1 A_PlaySound("Creep/GasSpray")
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,1.0)
		CRE1 B 8 A_PlaySound("Creep/Evolution",6)
		CRE1 BBCCD 9 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 D 1 A_PlaySound("Creep/GasSpray")
		CRE1 DEE 9 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 FF 9 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
	    Goto Death
	Death:
	    TNT1 A 0 
	    TNT1 A 0 A_JumpIfInventory("SlimedACSDeath",1,12)
		TNT1 A 0 A_JumpIfInventory("SlimedEvolutionDeath",1,15)
        TNT1 A 0 A_Scream
		TNT1 A 0 A_SpawnItemEx("PoisonSlimer",0,0,0,0,0,0,0,SXF_ABSOLUTEVELOCITY,0) 
	    TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs3")
	    TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs4")
		TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs6")
        TNT1 A 0 A_NoBlocking
        TNT1 A -1
        Stop
		ENE9 A 0 
        ENE9 A 0 A_NoBlocking
		ENE9 A 1 A_Die
		Stop	
		CRE1 F 0 
		CRE1 F 0 A_NoBlocking
		CRE1 F 1 A_Die
		CRE1 F 1 A_SpawnItem("Creep")
		Stop
        }
}

ACTOR "Protozoid" : " Protozoid " 31089
{
    //$Category DN3D Aliens //Protozoid Slimers
    +NOGRAVITY
	+LOOKALLAROUND
	+SPAWNCEILING
	-FLOORCLIP
	-FLOORHUGGER
	-DROPOFF
	States
    {	
	Spawn:
        ENE9 F 0 
		ENE9 F 0 A_JumpIfInventory("NormalCheck",1,"NormalSpawn")
		ENE9 F 0 A_GiveInventory("NormalCheck",1)
		ENE9 F 0 A_GiveInventory("SpawnLookCeiling",1)
        ENE9 FGHIJIHG 2 A_Look
        Goto Spawn+4	
    NormalSpawn:
        ENE9 A 0 
	    ENE9 A 0 A_JumpIfInventory("SlimerEvolution",6,"Evolution")
		ENE9 A 0 A_JumpIfInventory("SpawnLookCeiling",1,11)
		ENE9 A 0 A_TakeInventory("SpawnLookCeiling",999)
		ENE9 ABCDEDCB 2 A_Look
        Loop
	Spawn2:
		ENE9 FGHIJIHG 2 A_Look
        Loop
    GoDown:
        ENE9 M 0 A_Stop
		ENE9 M 0 A_PlaySound("Slimer/Active")
        ENE9 M 0 A_ChangeFlag("NOGRAVITY",0)
	    ENE9 M 0 A_ChangeFlag("SPAWNCEILING",0)
		ENE9 M 0 A_ChangeFlag("FLOORCLIP",1)
		ENE9 M 0 A_ChangeFlag("FLOORHUGGER",1)
		ENE9 M 0 A_ChangeFlag("DROPOFF",1)
		ENE9 M 0 A_TakeInventory("SpawnLookCeiling",999)
	    ENE9 KLL 2 A_JumpIf(Z-FloorZ<=30,"SeeDown")
	    ENE9 L 2 A_JumpIf(VelZ==0,"SeeDown")
	    Goto GoDown+8
    GoUp:   
        ENE9 M 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoDown")
		ENE9 M 0 A_PlaySound("Slimer/Active")
        ENE9 M 0 A_ChangeFlag("NOGRAVITY",1)
		ENE9 M 0 A_ChangeFlag("FLOORCLIP",0)
		ENE9 M 0 A_ChangeFlag("FLOORHUGGER",0)
		ENE9 M 0 A_ChangeFlag("DROPOFF",0)
		ENE9 M 0 A_GiveInventory("SpawnLookCeiling",1)
        ENE9 M 2 ThrustThingZ(0,50,0,0)
	    ENE9 MN 2 A_JumpIf(CeilingZ-Z<=30,"SeeUp")
        ENE9 N 2 ThrustThingZ(0,50,0,0)
	    ENE9 N 2 A_JumpIf(VelZ==0,"SeeUp")
	    Goto GoUp+9
    See:
    SeeDown:
	    ENE9 F 0 
	    ENE9 F 0 A_JumpIfInventory("SlimerEvolution",6,"Evolution")
		ENE9 F 0 A_JumpIfInventory("SpawnLookCeiling",1,"SeeUp")
        ENE9 F 0 A_ChangeFlag("NOGRAVITY",0)
		ENE9 F 0 A_SetScale(0.6,0.5)
  	    ENE9 F 0 A_JumpIfTargetInLOS(2,140)
	    ENE9 F 0 A_Jump(24,"GiveUp")
        ENE9 ABCDEDCB 2 A_VileChase		
	    ENE9 F 0 A_Jump(52,"GoUp")
	    ENE9 F 0 A_Jump(52,"GoDown")
	    Loop
    SeeUp:
  	    ENE9 A 0 A_JumpIfTargetInLOS(2,140)
	    ENE9 A 0 A_Jump(20,"Giveup")
        ENE9 A 0 ThrustThingZ(0,50,0,0)
		ENE9 A 0 A_SetScale(0.6,0.5)
        ENE9 F 2 A_Chase
        ENE9 F 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 G 0 ThrustThingZ(0,50,0,0)
	    ENE9 G 2 A_Chase
        ENE9 G 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 G 0 ThrustThingZ(0,50,0,0)
	    ENE9 H 2 A_Chase
        ENE9 H 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 H 0 ThrustThingZ(0,50,0,0)
	    ENE9 I 2 A_Chase 
        ENE9 I 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 I 0 ThrustThingZ(0,50,0,0)
	    ENE9 J 2 A_Chase
        ENE9 J 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 J 0 ThrustThingZ(0,50,0,0)
	    ENE9 I 2 A_Chase
        ENE9 I 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 I 0 ThrustThingZ(0,50,0,0)
	    ENE9 H 2 A_Chase
        ENE9 H 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 H 0 ThrustThingZ(0,50,0,0)
	    ENE9 G 2 A_Chase
        ENE9 G 0 A_JumpIf(CeilingZ-Z>18,"GoUp")
		ENE9 G 0 A_JumpIf(ACS_ExecuteWithREsult(528)==1,"GoUp")
        ENE9 G 0 ThrustThingZ(0,50,0,0)
	    ENE9 G 0 A_Jump(52,"GoDown")
	    Loop	
    GiveUp:
        ENE9 K 0 A_ChangeFlag("NOGRAVITY",0)
	    Goto See
	Melee:
	    ENE9 A 0 
		ENE9 A 0 A_JumpIfInventory("SpawnLookCeiling",1,"MeleeCeiling")
        ENE9 A 0 A_JumpIfInTargetInventory("GettingSlimed",1,"Melee2")
        ENE9 A 0 A_GiveToTarget("GettingSlimedItem",1)
		ENE9 A 0 A_GiveInventory("SlimedACSDeath",1)
        Goto Death
	MeleeCeiling:
	    ENE9 A 0 
        ENE9 A 0 A_JumpIfInTargetInventory("GettingSlimed",1,"Melee2")
        ENE9 A 0 A_GiveToTarget("GettingSlimedItem2",1)
		ENE9 A 0 A_GiveInventory("SlimedACSDeath",1)
        Goto Death
	Melee2:       
        ENE9 P 0 A_ChangeFlag("NOGRAVITY",1)
	    ENE9 P 1 ThrustThingZ(0,4,0,1)	
  	    ENE9 P 0 A_PlaySound("Slimer/Attack")  
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 P 0 A_CustomMeleeAttack(12)
	    ENE9 P 1 ThrustThing(Angle*256/360,1,0,0)
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
	    ENE9 P 1 ThrustThing(Angle*256/360,1,0,0)
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
        ENE9 P 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 P 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 ThrustThing(Angle*256/360,1,0,0)
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 ThrustThing(Angle*256/360,1,0,0)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 Q 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 Q 0 A_FaceTarget
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 R 0 A_FaceTarget
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 R 1 ThrustThingZ(0,8,1,1)	
        ENE9 R 0 A_FaceTarget
	    ENE9 R 0 A_JumpIfTargetInsideMeleeRange(1)
        ENE9 R 0 A_FaceTarget
	    ENE9 R 0 A_Jump(255,"GoDown")
	    ENE9 R 1 ThrustThing(Angle*256/360,1,0,0)
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
        ENE9 R 0 A_ChangeFlag("NOGRAVITY",0)
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 R 1 A_Warp(AAPTR_TARGET,24,0,24)	
	    ENE9 R 1 ThrustThing(Angle*256/360,1,0,0)
	    ENE9 R 0 A_CustomMeleeAttack(10)
        Goto Melee2+2
	Pain.LaserShot:
	    ENE9 A 0
		ENE9 A 0 A_SpawnItemEx("PainTripLaser",0,0,5)
		ENE9 A 0 HealThing(2)
		Goto See
	Heal: 
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 2 A_SetScale(0.7,1.05)
		ENE9 O 2 A_SetScale(0.7,0.9)
		ENE9 O 0 A_GiveInventory("SlimerEvolution",1)
		Goto See
	Evolution:
	    ENE9 O 1 A_SetInvulnerable
	    ENE9 O 1 A_GiveInventory("SlimedEvolutionDeath",1)
		ENE9 O 1 A_PlaySound("Creep/Prepare",5)
		ENE9 O 1 A_PlaySound("Creep/GasSpray")
		CRE1 B 3 A_SetScale(1.0,0.10)
		CRE1 B 3 A_SetScale(1.0,0.15)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.20)
		CRE1 B 3 A_SetScale(1.0,0.25)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.30)
		CRE1 B 3 A_SetScale(1.0,0.35)
		CRE1 B 1 A_PlaySound("Creep/GasSpray")
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.40)
		CRE1 B 3 A_SetScale(1.0,0.45)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.50)
		CRE1 B 3 A_SetScale(1.0,0.55)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.60)
		CRE1 B 3 A_SetScale(1.0,0.65)
		CRE1 B 1 A_PlaySound("Creep/GasSpray")
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.70)
		CRE1 B 3 A_SetScale(1.0,0.75)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.80)
		CRE1 B 3 A_SetScale(1.0,0.85)
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,0.90)
		CRE1 B 3 A_SetScale(1.0,0.95)
		CRE1 B 1 A_PlaySound("Creep/GasSpray")
		CRE1 BBB 0 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 B 3 A_SetScale(1.0,1.0)
		CRE1 B 8 A_PlaySound("Creep/Evolution",6)
		CRE1 BBCCD 9 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CRE1 D 1 A_PlaySound("Creep/GasSpray")
		CRE1 DEE 9 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
		CREP AA 9 A_CustomMissile("GasCreepSpawn",1,Random(-2,2),Random(-180,180),2)
	    Goto Death
	Death:
	    TNT1 A 0 
	    TNT1 A 0 A_JumpIfInventory("SlimedACSDeath",1,12)
		TNT1 A 0 A_JumpIfInventory("SlimedEvolutionDeath",1,15)
        TNT1 A 0 A_Scream
		TNT1 A 0 A_SpawnItemEx("PoisonSlimer",0,0,0,0,0,0,0,SXF_ABSOLUTEVELOCITY,0) 
	    TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs3")
	    TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs4")
		TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs6")
        TNT1 A 0 A_NoBlocking
        TNT1 A -1
        Stop
		ENE9 A 0 
        ENE9 A 0 A_NoBlocking
		ENE9 A 1 A_Die
		Stop	
		CRE1 E 0 
		CRE1 E 0 A_NoBlocking
		CRE1 E 1 A_Die
		CRE1 E 1 A_SpawnItem("Creep")
		Stop
        }
}

ACTOR GasCreepSpawn
{
    DeathSound "GasCreep/DeathSpawn"
    Radius 4
    Height 2
    Scale 0.33
    Damage (1)
    PoisonDamage 20
    DamageType "AlienPoison" 
    Speed 2
    -SHOOTABLE
    -SOLID
    -ACTIVATEIMPACT
    +NOGRAVITY
    +DROPOFF
    +NOBLOCKMAP
    +RIPPER
    +DONTSPLASH
    +BLOODLESSIMPACT
    -BLOODSPLATTER
    +NODAMAGETHRUST
    +CANNOTPUSH
    +THRUGHOST
    +FLOORCLIP
    RenderStyle Add
    Alpha 0.47
    States
    {
    Spawn:
        ESMK QPO 2 A_Wander
		TNT1 A 0 A_SpawnItem("GasCreepRealSpawn")
	    TNT1 AA 0 A_Explode((1),90,0)
	    ESMK NML 2 A_Wander
	    TNT1 AA 0 A_Explode((1),90,0)
	    ESMK KJI 2 A_Wander
	    TNT1 AA 0 A_Explode((1),90,0)
	    ESMK HGF 2 A_Wander
	    TNT1 AA 0 A_Explode((1),90,0)
	    ESMK EDC 2 A_Wander
	    TNT1 AA 0 A_Explode((1),90,0)
	    ESMK BA 2 A_Wander
	    TNT1 AA 0 A_Explode((1),90,0)
        Goto Death
    Death:
        ESMK A 0 A_PlaySound("GasCreep/DeathSpawn")
        ESMK A 0 A_SpawnItemEx("GasCreepSpawnTrail",Random(-15,15),Random(-10,10),0,0,0,0,Random(-180,180))
        ESMK A 0 A_SpawnItemEx("GasCreepSpawnTrail",Random(-15,15),Random(-10,10),0,0,0,0,Random(-180,180))
	    ESMK A 0 A_SpawnItemEx("GasCreepSpawnTrail",Random(-15,15),Random(-10,10),0,0,0,0,Random(-180,180))
	    TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((1),60,0)
        Stop
        }
}

ACTOR GasCreepRealSpawn
{
    Radius 4
    Height 2
    Damage (1)
    DamageType "AlienPoison" 
	Obituary "%o succumbed to the deadly infection of Protozoid Slimer."
    Speed 0
    -SHOOTABLE
    -SOLID
    -ACTIVATEIMPACT
    +NOGRAVITY
    +DROPOFF
    +NOBLOCKMAP
    +RIPPER
    +DONTSPLASH
    +BLOODLESSIMPACT
    -BLOODSPLATTER
    +NODAMAGETHRUST
    +CANNOTPUSH
    +THRUGHOST
    +FLOORCLIP
    States
    {
    Spawn:
        TNT1 QPO 2 A_Wander
	    TNT1 AA 0 A_Explode((5),80,0)
	    TNT1 NML 2 A_Wander
	    TNT1 AA 0 A_Explode((5),80,0)
	    TNT1 KJI 2 A_Wander
	    TNT1 AA 0 A_Explode((5),80,0)
	    TNT1 HGF 2 A_Wander
	    TNT1 AA 0 A_Explode((5),80,0)
	    TNT1 EDC 2 A_Wander
	    TNT1 AA 0 A_Explode((5),80,0)
	    TNT1 BA 2 A_Wander
	    TNT1 AA 0 A_Explode((5),80,0)
        Goto Death
    Death:
	    TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        TNT1 A 3 
        TNT1 A 3 A_Explode((5),50,0)
        Stop
        }
}

ACTOR GasCreepSpawnTrail
{
    DeathSound "GasCreep/DeathFade"
    Radius 35
    Height 1
    Speed 1
    Mass 1000
    Scale 0.65
    -SHOOTABLE
    -SOLID
    -ACTIVATEIMPACT
    +DROPOFF
    +NOGRAVITY
    +DONTSPLASH
    +NOBLOCKMAP
    +BLOODLESSIMPACT
    -BLOODSPLATTER
    +NODAMAGETHRUST
    +CANNOTPUSH
    +THRUGHOST
    +FLOORCLIP
    Damage 2
    +CLIENTSIDEONLY
    RenderStyle add
    Alpha 0.44
    States
    {
    Spawn:
        PSNE A 0 A_PlaySound("GasCreep/DeathSpawn")
        PSNE AABB 3
        PSNE C 3
        PSNE D 3 A_SpawnItem("GasCreepFade")
        PSNE E 3
        PSNE F 3 A_SpawnDebris("GasCreepFade")
        PSNE G 3
        PSNE C 3 A_SpawnItem("GasCreepFade")
        PSNE D 3
        PSNE E 3 A_SpawnDebris("GasCreepFade")
        PSNE F 3
        PSNE G 3 A_SpawnItem("GasCreepFade")
        PSNE C 3
        PSNE D 3 A_SpawnDebris("GasCreepFade")
        PSNE E 3
        PSNE F 3 A_SpawnItem("GasCreepFade")
        PSNE G 3
        PSNE C 3 A_SpawnDebris("GasCreepFade")
        PSNE D 3
        PSNE E 3 A_SpawnItem("GasCreepFade")
        PSNE F 3
        PSNE G 3 A_SpawnDebris("GasCreepFade")
        PSNE C 3
        PSNE D 3 A_SpawnItem("GasCreepFade")
        PSNE E 3
        PSNE F 3 A_SpawnDebris("GasCreepFade")
        PSNE G 3
        Goto Death
    Death:
        ESMK A 0 A_PlaySound("GasCreep/DeathFade")
        PSNE A 0 A_SpawnItem("GasCreepFade",0,0,0)
        Stop
        }
}

ACTOR GasCreepFade
{
    Radius 10
    Height 6
    Scale 0.37
    Speed 6
    Health 2
    -SHOOTABLE
    -SOLID
    +FLOATBOB
    +NOGRAVITY
    +DROPOFF
    +NOBLOCKMAP
    +CLIENTSIDEONLY
    RenderStyle Translucent
    Alpha 0.14
    States
    {
    Spawn:
        PSNE A 0 A_PlaySound("GasCreep/DeathFade")
        PSNE HIJKLM 2 
        Stop
        }
}

ACTOR PoisonSlimer
{
	Radius 1
	Height 1
	Speed 1
	Damage (0)
	Projectile
	RenderStyle Add
	PoisonDamage 20
	DamageType "AlienPoison" 
	Obituary "%o succumbed to the deadly infection of Protozoid Slimer."
	+THRUGHOST
	States
	{
	Spawn: 
        TNT1 A 0 
		TNT1 A 0 
    Death:
	    TNT1 A 0 
		TNT1 A 1 A_Jump(128,3)
		TNT1 A 0 
		TNT1 A 1 A_Explode(8,88)
		Stop
		TNT1 A 1 
		Stop
        }
}

ACTOR DeathGibSlimer
{
	Radius 1
	Height 1
	Speed 1
	Damage (0)
	Projectile
	RenderStyle Add
	States
	{
	Spawn: 
        TNT1 A 0 
		TNT1 A 0 
    Death:
		TNT1 A 1 
		TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs3")
	    TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs4")
		TNT1 AA 0 A_SpawnDebris("DukeSlimerGibs6")
		Stop
        }
}